home *** CD-ROM | disk | FTP | other *** search
/ Canadian Forces / CF_FC.iso / pc / data / swf / army_fr.swf / scripts / %3Cdefault package%3E / FScrollBarSymbol.as < prev    next >
Encoding:
Text File  |  2005-02-18  |  6.7 KB  |  195 lines

  1. function(inc, mode)
  2. {
  3.    var _loc3_ = this.smallScroll;
  4.    if(inc != "one")
  5.    {
  6.       _loc3_ = this.largeScroll != 0 ? this.largeScroll : this.pageSize;
  7.    }
  8.    var _loc2_ = this.getScrollPosition() + mode * _loc3_;
  9.    _loc2_;
  10.    this.maxPos;
  11. }
  12. FScrollBarClass = function()
  13. {
  14.    if(this._height == 4)
  15.    {
  16.       return undefined;
  17.    }
  18.    this.init();
  19.    this.minPos = this.maxPos = this.pageSize = this.largeScroll = 0;
  20.    this.smallScroll = 1;
  21.    this.width = !this.horizontal ? this._height : this._width;
  22.    this._xscale = this._yscale = 100;
  23.    this.setScrollPosition(0);
  24.    this.tabEnabled = false;
  25.    if(this._targetInstanceName.length > 0)
  26.    {
  27.       this.setScrollTarget(this._parent[this._targetInstanceName]);
  28.    }
  29.    this.tabChildren = false;
  30.    this.setSize(this.width);
  31. };
  32. FScrollBarClass.prototype = new FUIComponentClass();
  33. FScrollBarClass.prototype.setHorizontal = function(flag)
  34. {
  35.    if(this.horizontal && !flag)
  36.    {
  37.       this._xscale = 100;
  38.       this._rotation = 0;
  39.    }
  40.    else if(flag && !this.horizontal)
  41.    {
  42.       this._xscale = -100;
  43.       this._rotation = -90;
  44.    }
  45.    this.horizontal = flag;
  46. };
  47. FScrollBarClass.prototype.setScrollProperties = function(pSize, mnPos, mxPos)
  48. {
  49.    if(!this.enable)
  50.    {
  51.       return undefined;
  52.    }
  53.    this.pageSize = pSize;
  54.    this.minPos = Math.max(mnPos,0);
  55.    this.maxPos = Math.max(mxPos,0);
  56.    this.scrollPosition = Math.max(this.minPos,this.scrollPosition);
  57.    this.scrollPosition = Math.min(this.maxPos,this.scrollPosition);
  58.    if(this.maxPos - this.minPos <= 0)
  59.    {
  60.       this.scrollThumb_mc.removeMovieClip();
  61.       this.upArrow_mc.gotoAndStop(3);
  62.       this.downArrow_mc.gotoAndStop(3);
  63.       this.downArrow_mc.onPress = this.downArrow_mc.onRelease = this.downArrow_mc.onDragOut = null;
  64.       this.upArrow_mc.onPress = this.upArrow_mc.onRelease = this.upArrow_mc.onDragOut = null;
  65.       this.scrollTrack_mc.onPress = this.scrollTrack_mc.onRelease = null;
  66.       this.scrollTrack_mc.onDragOut = this.scrollTrack_mc.onRollOut = null;
  67.       this.scrollTrack_mc.useHandCursor = false;
  68.    }
  69.    else
  70.    {
  71.       var _loc2_ = this.getScrollPosition();
  72.       this.upArrow_mc.gotoAndStop(1);
  73.       this.downArrow_mc.gotoAndStop(1);
  74.       this.upArrow_mc.onPress = this.upArrow_mc.onDragOver = this.startUpScroller;
  75.       this.upArrow_mc.onRelease = this.upArrow_mc.onDragOut = this.stopScrolling;
  76.       this.downArrow_mc.onPress = this.downArrow_mc.onDragOver = this.startDownScroller;
  77.       this.downArrow_mc.onRelease = this.downArrow_mc.onDragOut = this.stopScrolling;
  78.       this.scrollTrack_mc.onPress = this.scrollTrack_mc.onDragOver = this.startTrackScroller;
  79.       this.scrollTrack_mc.onRelease = this.stopScrolling;
  80.       this.scrollTrack_mc.onDragOut = this.stopScrolling;
  81.       this.scrollTrack_mc.onRollOut = this.stopScrolling;
  82.       this.scrollTrack_mc.useHandCursor = false;
  83.       this.attachMovie("ScrollThumb","scrollThumb_mc",3);
  84.       this.scrollThumb_mc._x = 0;
  85.       this.scrollThumb_mc._y = this.upArrow_mc._height;
  86.       this.scrollThumb_mc.onPress = this.startDragThumb;
  87.       this.scrollThumb_mc.controller = this;
  88.       this.scrollThumb_mc.onRelease = this.scrollThumb_mc.onReleaseOutside = this.stopDragThumb;
  89.       this.scrollThumb_mc.useHandCursor = false;
  90.       this.thumbHeight = this.pageSize / (this.maxPos - this.minPos + this.pageSize) * this.trackSize;
  91.       this.thumbMid_mc = this.scrollThumb_mc.mc_sliderMid;
  92.       this.thumbTop_mc = this.scrollThumb_mc.mc_sliderTop;
  93.       this.thumbBot_mc = this.scrollThumb_mc.mc_sliderBot;
  94.       this.thumbHeight = Math.max(this.thumbHeight,6);
  95.       this.midHeight = this.thumbHeight - this.thumbTop_mc._height - this.thumbBot_mc._height;
  96.       this.thumbMid_mc._yScale = this.midHeight * 100 / this.thumbMid_mc._height;
  97.       this.thumbMid_mc._y = this.thumbTop_mc._height;
  98.       this.thumbBot_mc._y = this.thumbTop_mc._height + this.midHeight;
  99.       this.scrollTop = this.scrollThumb_mc._y;
  100.       this.trackHeight = this.trackSize - this.thumbHeight;
  101.       this.scrollBot = this.trackHeight + this.scrollTop;
  102.       _loc2_ = Math.min(_loc2_,this.maxPos);
  103.       this.setScrollPosition(Math.max(_loc2_,this.minPos));
  104.    }
  105. };
  106. FScrollBarClass.prototype.getScrollPosition = function()
  107. {
  108.    return this.scrollPosition;
  109. };
  110. FScrollBarClass.prototype.setScrollPosition = function(pos)
  111. {
  112.    this.scrollPosition = pos;
  113.    if(this.scrollThumb_mc != undefined)
  114.    {
  115.       pos = Math.min(pos,this.maxPos);
  116.       pos = Math.max(pos,this.minPos);
  117.    }
  118.    this.scrollThumb_mc._y = (pos - this.minPos) * this.trackHeight / (this.maxPos - this.minPos) + this.scrollTop;
  119.    this.executeCallBack();
  120. };
  121. FScrollBarClass.prototype.setLargeScroll = function(lScroll)
  122. {
  123.    this.largeScroll = lScroll;
  124. };
  125. FScrollBarClass.prototype.setSmallScroll = function(sScroll)
  126. {
  127.    this.smallScroll = sScroll;
  128. };
  129. FScrollBarClass.prototype.setEnabled = function(enabledFlag)
  130. {
  131.    var _loc3_ = this.enable;
  132.    if(enabledFlag && !_loc3_)
  133.    {
  134.       this.enable = enabledFlag;
  135.       if(this.textField != undefined)
  136.       {
  137.          this.setScrollTarget(this.textField);
  138.       }
  139.       else
  140.       {
  141.          this.setScrollProperties(this.pageSize,this.cachedMinPos,this.cachedMaxPos);
  142.          this.setScrollPosition(this.cachedPos);
  143.       }
  144.       this.clickFilter = undefined;
  145.    }
  146.    else if(!enabledFlag && _loc3_)
  147.    {
  148.       this.textField.removeListener(this);
  149.       this.cachedPos = this.getScrollPosition();
  150.       this.cachedMinPos = this.minPos;
  151.       this.cachedMaxPos = this.maxPos;
  152.       if(this.clickFilter == undefined)
  153.       {
  154.          this.setScrollProperties(this.pageSize,0,0);
  155.       }
  156.       else
  157.       {
  158.          this.clickFilter = true;
  159.       }
  160.       this.enable = enabledFlag;
  161.    }
  162. };
  163. FScrollBarClass.prototype.setSize = function(hgt)
  164. {
  165.    if(this._height == 1)
  166.    {
  167.       return undefined;
  168.    }
  169.    this.width = hgt;
  170.    this.scrollTrack_mc._yscale = 100;
  171.    this.scrollTrack_mc._yscale = 100 * this.width / this.scrollTrack_mc._height;
  172.    if(this.upArrow_mc == undefined)
  173.    {
  174.       this.attachMovie("UpArrow","upArrow_mc",1);
  175.       this.attachMovie("DownArrow","downArrow_mc",2);
  176.       this.downArrow_mc.controller = this.upArrow_mc.controller = this;
  177.       this.upArrow_mc.useHandCursor = this.downArrow_mc.useHandCursor = false;
  178.       this.upArrow_mc._x = this.upArrow_mc._y = 0;
  179.       this.downArrow_mc._x = 0;
  180.    }
  181.    this.scrollTrack_mc.controller = this;
  182.    this.downArrow_mc._y = this.width - this.downArrow_mc._height;
  183.    this.trackSize = this.width - 2 * this.downArrow_mc._height;
  184.    if(this.textField != undefined)
  185.    {
  186.       this.onTextChanged();
  187.    }
  188.    else
  189.    {
  190.       this.setScrollProperties(this.pageSize,this.minPos,this.maxPos);
  191.    }
  192. };
  193. FScrollBarClass.prototype;
  194. "scrollIt";
  195.